package com.spzx.product.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.spzx.product.api.domain.vo.CategoryVo;
import com.spzx.product.domain.Category;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.List;

/**
 * 商品分类Service接口
 *
 */
public interface ICategoryService extends IService<Category>
{

    /**
     * 根据id查询孩子分类集合
     * @param id 主键
     * @return 孩子集合
     */
    List<Category> treeSelect(Long id);



    /**
     * 根据指定的分类id,获取所有上级id,并存放到集合中返回。
     * @param categoryId 当前分类id
     * @return 当前分类id的所有上级分类id，保证id顺序。一级，二级，三级
     */
    public List<Long> getAllCategoryIdList(Long categoryId);

    void exportData(HttpServletResponse response) throws Exception;

    void importData(MultipartFile file) throws Exception;

    List<CategoryVo> getCategoryOne();

    /**
     * 三级分类（树结构）
     * @return
     */
    List<CategoryVo> tree();
}